package SortMethod;

import SortHelper.SortHelper;

public class SelectSort {

    private SelectSort(){}

    public static <E extends Comparable<E>> void sort(E[] arr) {
        //i走到哪哪就有序，i的下一个无序的数经过j循环选出对应的数然后交换就变成有序
        for (int i = 0; i < arr.length; i++) {
            int minIdex = i;
            for (int j = i; j < arr.length; j++) {
                if (arr[j].compareTo(arr[minIdex]) < 0)
                    minIdex = j;
            }
            SortHelper.swap(arr,i,minIdex);
        }
    }
}
